package Negocio;

import java.util.Date;

import DTO.DTO_Producto;
import Entities.Entity_Producto;

public abstract class Producto {

	protected String nombre;
	protected String caducidad;
	protected Date fechaVen;
	
	public Producto(String n, String c, Date fV)
	{
		this.setNombre(n);
		this.setCaducidad(c);
		this.setFechaVen(fV);
	}
	
	public Producto(){
	}

	public Producto(DTO_Producto producto){
		this.nombre=producto.getNombre();
		this.caducidad=producto.getCaducidad();
		this.fechaVen=producto.getFechaVen();
	}
	
	public Producto(Entity_Producto producto){
		this.nombre=producto.getNombre();
		this.caducidad=producto.getCaducidad();
		this.fechaVen=producto.getFechaVen();
	}

	
	public String getNombre() {
		
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getCaducidad() {
		return caducidad;
	}
	public void setCaducidad(String caducidad) {
		this.caducidad = caducidad;
	}
	public Date getFechaVen() {
		return fechaVen;
	}
	public void setFechaVen(Date fechaVen) {
		this.fechaVen = fechaVen;
	}
	
	//METODOS DE NEGOCIO
	public Boolean estasVencido()
	{
		Date utilDate = new Date();
		return fechaVen.before(utilDate);
	}
	
	public abstract DTO_Producto toDTO();
	public abstract Entity_Producto toEntity();
}
